#include<bits/stdc++.h>

using namespace std;


int main() {
    int cards[4][14] = {0}; // 定义一个二维数组 cards 来存储牌的信息，4 行代表 4 种花色，14 列代表 1 到 13 点的牌
    char SUIT[5] = "SHCD";// 定义花色数组，分别表示黑桃（Spread、红桃Heart、梅花Club、方块Diamond）
    int n;
    cin >> n; // 从标准输入读取牌的数量
    while (n--) {
        char suit;// 存储牌的花色
        int rank;// 存储牌的点数
        cin >> suit >> rank; // 从标准输入读取花色和点数
        cards[strchr(SUIT, suit) - SUIT][rank] = 1;// strchr(SUIT, suit) - SUIT 找到 suit 在 SUIT 中的位置，将对应位置的牌标记为 1，表示该牌已出现
    }
    for (int suit = 0; suit < 4; suit++)// 遍历 4 种花色
        for (int rank = 1; rank <= 13; rank++) { // 遍历 1 到 13 点的牌
            if (cards[suit][rank] == 0) // 如果该牌未出现过
                cout << SUIT[suit] << " " << suit << endl;// 输出该花色和点数
        }
    return 0;
}